package net.sx.minemodule.mvp.bean;

import com.alibaba.fastjson.annotation.JSONField;
import com.kedll.library.adapter.MultiTypeAdapter;
import com.kedll.library.mvp.BaseModel;

import net.sx.minemodule.mvp.item.AfterItem;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * Created by 拇指 on 2019/7/8 0008.
 * Email:muzhi@uoko.com
 * 退款售后
 *
 * @Update Date: 2019-07-23 17:51
 */
public class RefundBean extends BaseModel<AfterItem> implements Serializable {

    /**
     * supplierName : 杭州娃哈哈集团
     * note : 难看
     * images : ["12312312.jpg","12312312.jpg"]
     * supplierId : 17
     * orderProductResult : {"distributionType":false,"productId":26,"salePrice":37,"num":1,"id":1,"pic":"http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg","productName":"华为 HUAWEI P20","attrs":[{"name":"测试","value":"16GB"}]}
     * freightAmount : 0
     * orderId : 2
     * orderSn : 201809150101000001
     * medalNum : 0
     * register_address : 浙江省杭州市江干区
     * contactsPhone : 18322222222
     * returnApplySn : C9E2DE2927A7
     * reasonId : 1
     * handleType : 3
     * createTime : 2019-07-19T07:41:43.000+0000
     * memberUsername : 张三
     * companyAddressId : 0
     * id : 27
     * contactsUserName : 张三
     * returnType : 1
     * returnAmount : 2344
     * memberId : 48
     * realPrice : 3586
     * status : 10
     */

    /*暂缺字段**/
    private String logisticsCompany = "";
    private String logisticsSn = "";
    private String expirationTime;//等待卖家处理过期时间

    private String supplierName;
    private String note;
    private String images;
    private int supplierId;
    private RefundGoodsBean orderProductResult;
    private RefundGoodsBean orderReturnApplyItemResult;
    private BigDecimal freightAmount;
    private int orderId;
    private String orderSn;
    private int medalNum;
    private String register_address;
    private String contactsPhone = "";
    private String returnApplySn;
    private int reasonId;
    private int handleType;
    private String createTime;
    private String memberUsername;
    private int companyAddressId;
    private int id;
    private String contactsUserName="";
    private int returnType;
    private BigDecimal returnAmount;
    private int memberId;
    private int realPrice;
    private int status;
    @JSONField(name = "isDelete")
    private boolean delete = false;

    public AfterItem createItem(MultiTypeAdapter adapter) {
        return new AfterItem(this);
    }

    public boolean isDelete() {
        return delete;
    }

    public void setDelete(boolean delete) {
        this.delete = delete;
    }

    public String getExpirationTime() {
        return expirationTime;
    }

    public void setExpirationTime(String expirationTime) {
        this.expirationTime = expirationTime;
    }

    public String getLogisticsCompany() {
        return logisticsCompany;
    }

    public void setLogisticsCompany(String logisticsCompany) {
        this.logisticsCompany = logisticsCompany;
    }

    public String getLogisticsSn() {
        return logisticsSn;
    }

    public void setLogisticsSn(String logisticsSn) {
        this.logisticsSn = logisticsSn;
    }

    public String getSupplierName() {
        return supplierName;
    }

    public void setSupplierName(String supplierName) {
        this.supplierName = supplierName;
    }

    public String getNote() {
        return note;
    }

    public void setNote(String note) {
        this.note = note;
    }

    public String getImages() {
        return images;
    }

    public void setImages(String images) {
        this.images = images;
    }

    public int getSupplierId() {
        return supplierId;
    }

    public void setSupplierId(int supplierId) {
        this.supplierId = supplierId;
    }


    public BigDecimal getFreightAmount() {
        return freightAmount;
    }

    public void setFreightAmount(BigDecimal freightAmount) {
        this.freightAmount = freightAmount;
    }

    public RefundGoodsBean getOrderProductResult() {
        return orderProductResult;
    }

    public void setOrderProductResult(RefundGoodsBean orderProductResult) {
        this.orderProductResult = orderProductResult;
    }

    public RefundGoodsBean getOrderReturnApplyItemResult() {
        return orderReturnApplyItemResult;
    }

    public void setOrderReturnApplyItemResult(RefundGoodsBean orderReturnApplyItemResult) {
        this.orderReturnApplyItemResult = orderReturnApplyItemResult;
    }

    public int getOrderId() {
        return orderId;
    }

    public void setOrderId(int orderId) {
        this.orderId = orderId;
    }

    public String getOrderSn() {
        return orderSn;
    }

    public void setOrderSn(String orderSn) {
        this.orderSn = orderSn;
    }

    public int getMedalNum() {
        return medalNum;
    }

    public void setMedalNum(int medalNum) {
        this.medalNum = medalNum;
    }

    public String getRegister_address() {
        return register_address;
    }

    public void setRegister_address(String register_address) {
        this.register_address = register_address;
    }

    public String getContactsPhone() {
        return contactsPhone;
    }

    public void setContactsPhone(String contactsPhone) {
        this.contactsPhone = contactsPhone;
    }

    public String getReturnApplySn() {
        return returnApplySn;
    }

    public void setReturnApplySn(String returnApplySn) {
        this.returnApplySn = returnApplySn;
    }

    public int getReasonId() {
        return reasonId;
    }

    public void setReasonId(int reasonId) {
        this.reasonId = reasonId;
    }

    public int getHandleType() {
        return handleType;
    }

    public void setHandleType(int handleType) {
        this.handleType = handleType;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getMemberUsername() {
        return memberUsername;
    }

    public void setMemberUsername(String memberUsername) {
        this.memberUsername = memberUsername;
    }

    public int getCompanyAddressId() {
        return companyAddressId;
    }

    public void setCompanyAddressId(int companyAddressId) {
        this.companyAddressId = companyAddressId;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getContactsUserName() {
        return contactsUserName;
    }

    public void setContactsUserName(String contactsUserName) {
        this.contactsUserName = contactsUserName;
    }

    public int getReturnType() {
        return returnType;
    }

    public void setReturnType(int returnType) {
        this.returnType = returnType;
    }

    public BigDecimal getReturnAmount() {
        return returnAmount;
    }

    public void setReturnAmount(BigDecimal returnAmount) {
        this.returnAmount = returnAmount;
    }

    public int getMemberId() {
        return memberId;
    }

    public void setMemberId(int memberId) {
        this.memberId = memberId;
    }

    public int getRealPrice() {
        return realPrice;
    }

    public void setRealPrice(int realPrice) {
        this.realPrice = realPrice;
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    /***** old ****/
    /*
     * applyTime :
     * expirationTime :
     * id : 0
     * isStorePostage : 0
     * logisticsCompany :
     * logisticsSn :
     * memberId : 0
     * memberPostage : 0
     * memberReason :
     * orderId : 0
     * orderProducts : [{"attrs":[{"name":"","value":""}],"id":0,"num":0,"pic":"","productId":0,"productName":"","salePrice":0}]
     * orderSn :
     * productId : 0
     * productNum : 0
     * qualityProblem : 0
     * reasonDescribe :
     * receivingAddress :
     * returnCommission : 0
     * returnGoodsImg :
     * returnPoint : 0
     * serviceId :
     * status : 0
     * storePostage : 0
     * storeReason :
     * verifyStatus : 0
     */
/*
    private String applyTime;
    private String expirationTime;
    private int id;
    private int isStorePostage;
    private String logisticsCompany = "";
    private String logisticsSn = "";
    private int memberId;
    private int memberPostage;
    private String memberReason;
    private int orderId;
    private String orderSn;
    private int productId;
    private int productNum;
    private int qualityProblem;
    private String reasonDescribe;
    private String receivingAddress;
    private BigDecimal returnCommission;
    private String returnGoodsImg;
    private int returnPoint;
    private String serviceId;
    private int status;
    private int storePostage;
    private String storeReason;
    private int verifyStatus;
    private List<RefundGoodsBean> orderProducts;
    private String contractPhone;
    private String conractUserName;
    private String contractAddress;
    private String supplierName;

    @Override
    public AfterItem createItem(MultiTypeAdapter adapter) {
        return new AfterItem(this);
    }

    public String getApplyTime() {
        return applyTime;
    }

    public void setApplyTime(String applyTime) {
        this.applyTime = applyTime;
    }

    public String getExpirationTime() {
        return expirationTime;
    }

    public void setExpirationTime(String expirationTime) {
        this.expirationTime = expirationTime;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getIsStorePostage() {
        return isStorePostage;
    }

    public void setIsStorePostage(int isStorePostage) {
        this.isStorePostage = isStorePostage;
    }

    public String getLogisticsCompany() {
        return logisticsCompany;
    }

    public void setLogisticsCompany(String logisticsCompany) {
        this.logisticsCompany = logisticsCompany;
    }

    public String getLogisticsSn() {
        return logisticsSn;
    }

    public void setLogisticsSn(String logisticsSn) {
        this.logisticsSn = logisticsSn;
    }

    public int getMemberId() {
        return memberId;
    }

    public void setMemberId(int memberId) {
        this.memberId = memberId;
    }

    public int getMemberPostage() {
        return memberPostage;
    }

    public void setMemberPostage(int memberPostage) {
        this.memberPostage = memberPostage;
    }

    public String getMemberReason() {
        return memberReason;
    }

    public void setMemberReason(String memberReason) {
        this.memberReason = memberReason;
    }

    public int getOrderId() {
        return orderId;
    }

    public void setOrderId(int orderId) {
        this.orderId = orderId;
    }

    public String getOrderSn() {
        return orderSn;
    }

    public void setOrderSn(String orderSn) {
        this.orderSn = orderSn;
    }

    public int getProductId() {
        return productId;
    }

    public void setProductId(int productId) {
        this.productId = productId;
    }

    public int getProductNum() {
        return productNum;
    }

    public void setProductNum(int productNum) {
        this.productNum = productNum;
    }

    public int getQualityProblem() {
        return qualityProblem;
    }

    public void setQualityProblem(int qualityProblem) {
        this.qualityProblem = qualityProblem;
    }

    public String getReasonDescribe() {
        return reasonDescribe;
    }

    public void setReasonDescribe(String reasonDescribe) {
        this.reasonDescribe = reasonDescribe;
    }

    public String getReceivingAddress() {
        return receivingAddress;
    }

    public void setReceivingAddress(String receivingAddress) {
        this.receivingAddress = receivingAddress;
    }

    public BigDecimal getReturnCommission() {
        if (returnCommission == null) {
            returnCommission = new BigDecimal(0);
        }
        return returnCommission.setScale(2, BigDecimal.ROUND_HALF_UP);
    }

    public void setReturnCommission(BigDecimal returnCommission) {
        this.returnCommission = returnCommission;
    }

    public String getReturnGoodsImg() {
        return returnGoodsImg;
    }

    public void setReturnGoodsImg(String returnGoodsImg) {
        this.returnGoodsImg = returnGoodsImg;
    }

    public int getReturnPoint() {
        return returnPoint;
    }

    public void setReturnPoint(int returnPoint) {
        this.returnPoint = returnPoint;
    }

    public String getServiceId() {
        return serviceId;
    }

    public void setServiceId(String serviceId) {
        this.serviceId = serviceId;
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public int getStorePostage() {
        return storePostage;
    }

    public void setStorePostage(int storePostage) {
        this.storePostage = storePostage;
    }

    public String getStoreReason() {
        return storeReason;
    }

    public void setStoreReason(String storeReason) {
        this.storeReason = storeReason;
    }

    public int getVerifyStatus() {
        return verifyStatus;
    }

    public void setVerifyStatus(int verifyStatus) {
        this.verifyStatus = verifyStatus;
    }

    public List<RefundGoodsBean> getOrderProducts() {
        return orderProducts;
    }

    public String getContractPhone() {
        return contractPhone;
    }

    public void setContractPhone(String contractPhone) {
        this.contractPhone = contractPhone;
    }

    public String getConractUserName() {
        return conractUserName;
    }

    public void setConractUserName(String conractUserName) {
        this.conractUserName = conractUserName;
    }

    public String getContractAddress() {
        return contractAddress;
    }

    public void setContractAddress(String contractAddress) {
        this.contractAddress = contractAddress;
    }

    public String getSupplierName() {
        return supplierName;
    }

    public void setSupplierName(String supplierName) {
        this.supplierName = supplierName;
    }

    public void setOrderProducts(List<RefundGoodsBean> orderProducts) {
        this.orderProducts = orderProducts;
    }*/
}
